package com.mobile.paperazi.view;

import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.widget.ImageView;

public class ResizableImageView extends ImageView {

	private float paperHeight;
	private float paperWidth;
	public ResizableImageView(Context context, AttributeSet attrs) {
		super(context, attrs);
	}

	@Override
	protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
		Drawable d = getDrawable();

		if (d != null) {
			// ceil not round - avoid thin vertical gaps along the left/right
			// edges
			int width = MeasureSpec.getSize(widthMeasureSpec);
			int height = (int) Math.ceil((float) width
					* (float) paperHeight
					/ (float) d.getIntrinsicWidth());
			setMeasuredDimension(width, height);
		} else {
			super.onMeasure(widthMeasureSpec, heightMeasureSpec);
		}
	}

	public float getPaperHeight() {
		return paperHeight;
	}

	public void setPaperHeight(float paperHeight) {
		this.paperHeight = paperHeight;
	}

	public float getPaperWidth() {
		return paperWidth;
	}

	public void setPaperWidth(float paperWidth) {
		this.paperWidth = paperWidth;
	}

}
